package com.springmq.mq.annoation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.util.ArrayList;
import java.util.List;

/**
 * @ClassName : testAnnoation
 * @Author : lby
 * @Date: 2021/2/2 9:50
 * @Description :
 */
public class TestAnnotation {
    @SuppressWarnings("all")
    public static void test(){
        List list=new ArrayList();
    }

    /**
     * 使用注解
     */
    @Inner(value = "aaa",name = "bbb",type = "ccc")
    void annotationTest(){

    }
}


/**
 * 自定义注解测试
 * @author Dragon
 * Target :注解作用范围
 * Retention :选择在程序运行还是编译时执行
 */
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@interface Inner{
    /**
     * 注解需要的参数
     */
    String[] value();

    String[] name();

    String[] type();

    /**
     * 可以给一个参数默认值
     * @return
     */
    int id() default 0;
}

